//////////////////////////////////////////////////////////////////////////

#include "mutex.h"

//////////////////////////////////////////////////////////////////////////

#include "boost/thread.hpp"

//////////////////////////////////////////////////////////////////////////


Mutex::Mutex()
: m_Mutex(NULL)
{
    m_Mutex = static_cast<void*>( new boost::mutex );
}


//////////////////////////////////////////////////////////////////////////


Mutex::~Mutex()
{
    if (m_Mutex)
        delete m_Mutex;
}


//////////////////////////////////////////////////////////////////////////


void Mutex::Lock()
{
    if (m_Mutex)
        static_cast<boost::mutex*>(m_Mutex)->lock();
}


//////////////////////////////////////////////////////////////////////////


void Mutex::Unlock()
{
    if (m_Mutex)
        static_cast<boost::mutex*>(m_Mutex)->unlock();
}


//////////////////////////////////////////////////////////////////////////
